Unmanned aerial vehicles and related methods and systems

ABSTRACT

Unmanned aerial vehicles include a processor to determine whether a first location of an unmanned vehicle and a second location of a virtual event is within a threshold distance; and a game experience controller to: control the unmanned vehicle based on a first command associated with a non-augmented state of the unmanned vehicle in response to the first location of the unmanned vehicle and the second location of the virtual event being outside of the threshold distance; and in response to the first location of the unmanned vehicle and the second location of the virtual event being within the threshold distance, control the unmanned vehicle based on a second command associated with an augmented state of the unmanned vehicle to simulate the unmanned vehicle being affected by the virtual event.

FIELD OF THE DISCLOSURE

This disclosure relates generally to unmanned aerial vehicles, and, moreparticularly, to unmanned aerial vehicles and related methods andsystems.

BACKGROUND

In recent years, unmanned aerial vehicles (UAVs) have begun to be usedin competitions and/or gaming activities. Some such competitions includeUAV racing in which competitors race their respective UAVs over apredefined course. In some examples, the UAVs include one or morecameras that provide a live-stream camera feed for a first-person viewfrom the UAV. In such examples, the competitors are able to controltheir UAVs based on information obtained via the live-stream camerafeeds.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of an example environment of use inwhich example unmanned aerial vehicles can be operated in accordancewith the teachings of this disclosure.

FIG. 2 is a block diagram of an example implementation of the examplegame experience controller of FIG. 1.

FIG. 3 is a schematic illustration of a first example unmanned aerialvehicle being affected by a virtual propeller disabling ray emitted by asecond example unmanned aerial vehicle in accordance with the teachingsof this disclosure.

FIG. 4 is a schematic illustration of an example unmanned aerial vehiclebeing affected by a virtual viscous area in accordance with theteachings of this disclosure.

FIG. 5 is a schematic illustration of an example unmanned aerial vehiclebeing affected by virtual smoke in accordance with the teachings of thisdisclosure.

FIG. 6 is a schematic illustration of an example unmanned aerial vehiclebeing affected by a virtual attractive hole in accordance with theteachings of this disclosure.

FIG. 7 is a schematic illustration of an example unmanned aerial vehiclebeing affected by a virtual boost or acceleration track in accordancewith the teachings of this disclosure.

FIG. 8 is a schematic illustration of a first example unmanned aerialvehicle being affected by a virtual tractor beam emitted by a secondexample unmanned aerial vehicle in accordance with the teachings of thisdisclosure.

FIG. 9 is a schematic illustration of a first example unmanned aerialvehicle being affected by virtual bullets emitted by a second exampleunmanned aerial vehicle in accordance with the teachings of thisdisclosure.

FIG. 10 is a schematic illustration of a first example unmanned aerialvehicle being affected by a virtual power shield emitted by a secondexample unmanned aerial vehicle in accordance with the teachings of thisdisclosure.

FIG. 11 is a flowchart representative of first machine readableinstructions that may be executed to implement the game experiencecontroller of FIGS. 1 and/or 2.

FIG. 12 is a flowchart representative of second machine readableinstructions that may be executed to implement the game experiencecontroller of FIGS. 1 and/or 2.

FIG. 13 is a processor platform structured to execute the instructionsof FIGS. 11 and/or 12 to implement the game experience controller ofFIG. 1.

The figures are not to scale. Wherever possible, the same referencenumbers will be used throughout the drawing(s) and accompanying writtendescription to refer to the same or like parts.

DETAILED DESCRIPTION

Examples disclosed herein relate to aerial vehicles (e.g., unmannedaerial vehicles, drones, semi-autonomous drones, autonomous drones) thatenable participants of varying experience levels to use the example UAVsin competitions, games and/or other augmented reality scenarios. Toenhance a user's experience when participating in a competition and/or agame, examples disclosed herein alter the flight routines and/ormaneuvers performed by an operator of the UAV to change the physicalflying characteristics and/or dynamics of the UAV. In other words,examples disclosed herein enable the look and/or feel of UAVs to changein real-time based on a situation within the game or otherwise. Some ofthe competitions and/or games in which example UAVs disclosed herein mayparticipate include UAV racing and/or UAV combat, with or without theuse of a headset. Of course, example UAVs disclosed herein may be usedfor any purpose with or without a headset and/or other display (e.g., ahead-mounted display).

In some examples, to enable the UAVs to react to different scenariospresented within a competition and/or game, disclosed example UAVs arestructured and/or configured to simulate the UAV being under theinfluence of a virtual force by executing example flight routines. Forexample, the UAV may execute example flight routines that simulate theUAV being impacted by a virtual laser and/or projectile, and/or the UAVmay execute example flight routines that simulate the UAV being underthe influence of a virtual tractor beam, etc.

To enable the UAVs to react to these different virtual scenarios and/orvirtual events, example UAVs disclosed herein include example on-boardflight controllers that are structured and/or configured to cause theUAVs to perform maneuvers and/or flight routines based on a receivedcommand, a game being played and/or the location of the UAV and/or avirtual event(s) within the game. Thus, the example UAVs are providedwith flight controllers that control the UAVs in gaming scenarios and/orcommand the UAVs to simulate reacting to different virtual events withinthe gaming scenarios.

To enable users (such as users with less experience) to use the UAVs incompetitions, games and/or otherwise, in some examples, the flightcontrollers are configured and/or structured to perform a flight routinethat is relatively more complex than the user input, and/or flightcommand(s) received from the user. For example, based on one or morerelatively simple input direction commands and/or a velocity commands,the example UAVs may perform a pitchback, a split S, a high Yo-Yo, a lowYo-Yo, a chandelle, etc., which is more complex than the receivedcommand(s). Thus, examples disclosed herein enable semi-autonomousnavigation and/or autonomous navigation during different flying modeswith little or no input from a user.

In some examples, the example UAVs support flight commands that causethe UAVs to have different attributes depending on the game beingplayed. The attributes may include a maximum speed of the UAV, anagility level of the UAV, etc. Additionally and/or alternatively, theattributes may be based on the location of the UAV within the game beingplayed and/or a scenario within the game. For example, if the virtualflight conditions of the game include clear flight conditions, the UAVmay be assigned a first attribute, characteristic and/or personalitythat causes the UAV to respond nimbly to a user command received.However, if the virtual flight conditions of the game include stormyflight conditions, the UAV may be assigned a second attribute,characteristic and/or personality that causes the UAV to respondsluggishly to the same user command. In other words, the behavior and/orresponsiveness of the UAV may be affected by virtual conditions and/orthe virtual environment presented within the game. Some example virtualconditions include virtual smoke that reduces the visibility at theuser-level (e.g., the headset worn by the user), an example virtualattractive hole that draws and/or bends a trajectory of the UAV(s)toward the virtual attractive hole, an example virtual boost track thataccelerates the UAV, etc.

In some disclosed examples, to affect how a UAV interacts with otherUAVs within the game, the UAVs are provided with virtual weapons and/orother virtual offensive tools, and/or virtual defensive tools. In somesuch examples, the UAVs include onboard flight controllers that causethe UAVs to react/perform a flight routine and/or maneuver to simulatethe virtual event affecting the UAV. For example, a first UAV may emit avirtual tractor beam that draws a second UAV toward the first UAV if thesecond UAV enters the space defined by the virtual tractor beam.Additionally or alternatively, in some examples, the second UAV includesa virtual protective shield and/or power shield that repels the firstUAV from the second UAV and/or otherwise prevents the second UAV frombeing harmed (e.g., hit by bullets, etc.). Additionally oralternatively, in some examples, the first UAV fires virtual bulletsthat virtually damages the second UAV if one of the virtual bullets hitsthe second UAV.

In such examples, if the second UAV is virtually damaged, the flightcharacteristics of the second UAV change to simulate the second UAVbeing damaged and/or being affected by the virtual event. The virtualevent may affect the second UAV based on a location of the second UAVand a location of the virtual event being within a threshold distancefrom the location of the second UAV. For example, if examples disclosedherein determine that a virtual bullet is within a threshold distance ofthe second UAV corresponding to the virtual bullet impacting the secondUAV, the second UAV may be commanded to perform a random walk, acontrolled spin, etc., and/or some other maneuver for a threshold amountof time prior to again flying according to the input commands receivedfrom the user. The threshold amount of time may be between about 5 and10 seconds, a relatively small amount of time, etc.

By changing the responsiveness of the UAV(s) to the same flight commandsdepending on the attribute, characteristic and/or personality assignedto the UAV and/or, generally, the virtual event(s) affecting UAV, theuser experience may be greatly enhanced by changing an amount of effortrequired to control the UAV. For example, a UAV may have a first levelof responsiveness when flying through a first virtual event within agame arena and have a second level of responsiveness when flying througha second virtual event within the game arena. The flight commands may begenerated by a user using a UAV controller such as, for example, ajoystick type controller (e.g., a velocity controller), a smart deviceand/or a controller associated with an immersive experience withAugmented Reality (AR). In some examples, haptic feedback is received bythe controllers to enhance the mode being played in the game, scoring inthe game and/or enabling first-person viewer experiences based onimage/video data received.

To enable the example UAVs to take on different flight characteristicsand/or personalities and/or to execute flight maneuvers (e.g., complexflight maneuvers) based on encountering a virtual event(s), in someexamples, sensors are used to determine the position of the UAV(s). Thesensors may include an internal measurement unit (IMU), a camera(s)(e.g., RealSense™ camera), one or more position sensors and/or othersensors in an example UAV arena and/or wherever the UAV is being used(e.g., sensors external to the UAV). Some of these sensors enablelocalization methods for semi-autonomous flight in areas where theglobal positioning system (GPS) is not accessible (e.g., inside abuilding) by using sensors that determine the position of the UAVwithout the use of GPS.

In examples in which the sensors are external to the UAV, the sensorsmay include an infrared camera(s) that detects one or more fiducialmarkers onboard the UAV, a light system (e.g., a structured lightsystem), an ultrasound beacon, etc. Thus, the position of the UAVs maybe determined using sensors and/or technology onboard the UAV and/orsensors and/or technology offboard the UAV. Regardless of the numberand/or type(s) of sensor(s) implemented to determine the position of theUAV(s), the example sensors may be structured and/or configured todetermine the position(s) of the UAV(s) within a threshold distance. Thethreshold distance may be approximately one centimeter (cm). However,the threshold distance may be any other distance.

Additionally or alternatively, in examples in which the sensors areexternal to the UAV, the area where the UAV is being used (e.g., the UAVarena) may include one or more sensors, visual landmarks, infraredbeacons and/or ultrasound beacons, etc. to enable the position of theUAV to be determined and/or to assist with controlling the UAV. In someexamples, to enable the position of a UAV(s) to be determined, anexample mat is used that includes distinct game elements, such as one ormore base stations for multiple players. The mat may include one or morevisual cues for UAV localization using a cameras onboard the UAVs. Insuch examples, the mat enables the game to be portable and/or scalable.In some examples, the mat includes one or more sensors (e.g., integratedsensors) and/or controllers that generates one or more virtual fencesand/or physical fence(s) and/or cage(s) that constrain the UAV(s) withina space and/or volume. For example, the mat may include a beacon-basedlocation system, where each beacon broadcasts its location to assist theUAV with determining its location within the game arena, etc. To enablethe location arena to be defined and/or to enable the location of theUAV(s) participating in the game to be determined, the beacon-basedlocation system may include ultrawideband (UWB) radio ranging, sonar,infrared cameras and/or other sensors.

To determine the location of the UAVs relative to one another within thegaming system, in some examples, the example UAVs include onboardsensing capabilities. Additionally or alternatively, to determine thelocation of the UAVs relative to one another within the gaming system,in some examples, the gaming system includes centralized communicationcapabilities (e.g., an example game facilitator) that enable the UAVsthat participate in the game to be made smaller based on, for example,less hardware being provided on the UAV(s) itself. In other words, insome examples, including the centralized communication capabilitiesand/or the game facilitator enables processing (e.g., at least someprocessing) to take place elsewhere than on the UAV itself.

To begin a game using the example UAVs disclosed herein, an examplesystem may be initialized. In some examples, initializing includesinitializing the example UAV (s), initializing the example mat(s)defining the arena and/or initializing the example controller(s) (e.g.,the wireless controller(s)) used to control the UAV(s). While some ofthe examples disclosed herein mention controlling the UAV(s) in anon-augmented state based on a user-provided command(s) and controllingthe UAV(s) in an augmented state based on a flight command(s) associatedwith a virtual event, in other examples, the UAV(s) may be controlledautonomously in the non-augmented state and/or the augmented state. Insome such examples, some of the UAVs participating in the game and/orcompetition may be user controlled and others of the UAVs participatingin the game and/or competition may be semi-autonomously controlledand/or autonomously controlled.

FIG. 1 illustrates first and second example unmanned aerial vehicles(UAVs) 102, 104 having respective propulsion sources, engines and/orpropellers 106, 108. In this example, the first and second UAVs 102, 104are navigating through an example arena and/or environment 110 and/orparticipating in a game and/or competition. In the illustrated example,the first UAV 102 receives flight commands 111 from and providesfeedback 112 to a first example remote controller 114. Similarly, in theillustrated example, the second UAV 104 receives flight commands 116 andprovides feedback 118 to a second example remote controller 120. In someexamples, the flight commands 111, 116 include velocity commands,direction commands and, more generally, commands associated with flyingand/or controlling the respective first and second UAVs 102, 104 withinthe environment 110.

To enable data to be conveyed between the first and second UAVs 102, 104and/or to enable the game and/or competition to take place, an examplegame facilitator 119 is included. In some examples, the game facilitator119 generates and/or accesses position and/or other data relating to avirtual event associated with the first UAV 102, and/or otherwisereceives position and/or other data relating to the first UAV 102. Insome examples, the game facilitator 119 generates and/or accessesposition and/or other data relating to a virtual event associated withthe second UAV 104 and/or otherwise receives position and/or other datarelating to the second UAV 104. In some examples, the position data maybe provided to the first UAV 102, the first remote controller 114, thesecond UAV 104 and/or the second remote controller 120. The positiondata and/or other data relating to a virtual event(s) may be accessedfrom game data 121 at the game facilitator 119.

To enable the position of the first and second UAVs 102, 104 to bedetermined within the environment 110, first, second, third and fourthexample boundary beacons 122, 124, 126, 128 are included in theillustrated example. In some examples, the boundary beacons 122, 124,126, 128 generate and/or transmit position information to the UAVs 102,104 and/or define an example boundary 129 for the environment 110. Theboundary beacons 122, 124, 126, 128 may be infrared beacons, ultrasoundbeacons and/or other transmitting device(s). In examples in which theenvironment 110 is defined and/or implemented using a mat and/or otherphysical structure, the beacons 122, 124, 126, 128 may be integral toand/or otherwise associated with the mat.

In some examples, to determine the position of the first UAV 102, thefirst UAV 102 accesses, via an example input/output device 130, firstposition information 131 from the first boundary beacon 122, secondposition information 132 from the second boundary beacon 124, and thirdposition information 134 from the third boundary beacon 126, etc. Onceaccessed, in some examples, an example processor 136 of the first UAV102 processes the first, second and third position information 131, 132,134 to determine the position of the first UAV 102 within theenvironment 110. Thus, in some examples, the location of the firstand/or second UAVs 102, 104 can be determined by accessing the positioninformation 131, 132, 134 from at least three of the four boundarybeacons 122, 124, 126, 128. The position information 131, 132, 134 mayinclude, for example, mutlilateration data with intersecting ranges fromdifferent boundary beacons 122, 124, 126, 128 as spheres to determinethe location of the UAV. In some examples, the input/output device 130is implemented by and/or includes a radio frequency (RF) transceivermodule.

Additionally or alternatively, in some examples, the boundary 129 isgenerated using geo-fencing software, etc., and/or the position of thefirst UAV 102 is determined using an example sensor 138 and/or anexample camera 140 of the first UAV 102. In some examples, the sensor138 is implemented by an example inertial measurement unit (IMU). Whenthe position of the first UAV 102 is determined using image/video data,in some examples, image/video data is obtained from the camera 140 andcompared, via the processor 136, to reference data stored in an exampledata storage 142 of the first UAV 102 and/or within the game data 121.The reference data may include real structures, real topography, etc.,of the environment 110, and/or virtual structures, virtual topography,virtual events, etc. of the environment 110.

As shown in the example of FIG. 1, the environment 110 includes a firstexample virtual simulation, event and/or force 144, a second examplevirtual simulation, event and/or force 146 and a third example virtualsimulation, event and/or force 148, referred to generally as examplevirtual events 144, 146, 148. In some examples, the first, second and/orthird virtual events 144, 146, 148 change a physical responsivenessand/or flight characteristic of the first and/or second UAVs 102, 104based on associated flight commands being executed if/when the UAVs 102,104 come under the influence of the respective virtual events 144, 146,148. In other words, based on a physical location of the UAV 102, 104being within a threshold distance of the location of virtual event 144,146, 148, a physical responsiveness and/or flight characteristic of theUAV 102, 104 may change based on an attribute of the virtual event 144,146 and/or 148 and an associated flight command being executed.

To enable the virtual environment of the game (e.g., the first, secondand/or third virtual events 144, 146, 18) in which the first UAV 102 isparticipating to be identified, in some examples, the processor 136accesses the game data 121 from the game facilitator 119. In someexamples, the game data 121 defines virtual obstacles, virtualtopography, etc., such as, for example, virtual trees, virtualmountains, virtual hills, virtual caves, virtual valleys, etc. In someexamples, the game data 121 defines virtual events including a virtuallaser being fired by the second UAV 104, a virtual cloud, a virtualtractor beam being emitted by the second UAV 104, etc. In some examples,the game data 121 further includes location data including the locationof the virtual event(s) 144, 146, 148 within the environment 110.

Once accessed, in some examples, the processor 136 and/or the gamefacilitator 119 generates and/or provides the virtual event(s) and/orassociated data to the first remote controller 114 via, for example, thefeedback 112 to affect the experience at the user level. In someexamples, the feedback includes audio feedback, visual feedback, hapticfeedback, etc. provided to the first remote controller 114 based on theevent (e.g., the virtual event) occurring within the game and/or thecompetition.

In the illustrated example, to determine the relative positions betweenthe first UAV 102 and one or more of the virtual events 144, 146, 18,the processor 136 accesses and/or determines location data associatedwith the first UAV 102, the second UAV 104 and the virtual events 144,146, 148. In some examples, the location data is accessed from the gamefacilitator 119, the first UAV 102, the second UAV 104, the first remotecontroller 114 and/or the second remote controller 120. To determine ifthe first virtual event 144 affects the first UAV 102, the processor 136compares the location of the first virtual event 144 and the location ofthe first UAV 102 to determine if the locations of the first virtualevent 144 and the first UAV 102 are within a threshold distance of oneanother. If the locations are within a threshold distance of oneanother, the processor 136 may determine that the first virtual event144 affects the first UAV 102. However, if the locations are not withinthe threshold distance of one another, the processor 136 may determinethat the first virtual event 144 does not affect the first UAV 102.

In some such examples, one or more of the virtual events 144, 146, 148can be implemented as an example virtual viscous area of the environment110, an example virtual low visibility area of the environment 110, anexample virtual attractive hole of the environment 110 and/or an examplevirtual acceleration zone of the environment 110. While some examples ofways the virtual events 144, 146, 148 can be implemented have beenmentioned, any other example may be used depending on the game beingplayed, etc.

In operation, when the processor 136 determines that the first UAV 102is affected by the first virtual event 144 based on the relativelocations of the first UAV 102 and the first virtual event 144 beingwithin a threshold distance of one another, in some examples, an examplegame experience controller 150 of the first UAV 102 executes flightcommands 152 accessed from the game data 121 to cause the first UAV 102to simulate being affected by the first virtual event 144. In otherwords, when the processor 136 determines that the first UAV 102 iswithin and/or otherwise affected by the first virtual event 144, in thisexample, the example game experience controller 150 overrides, augmentsand/or changes the first commands 111 from the first remote controller114 to be representative of flying through and/or being affected by thefirst virtual event 144. Thus, the flight commands 111, 116 accessedfrom the first and second controllers 114, 116 may be associated with anon-augmented state of the UAV 102, 104 and the flight commands 152accessed from the data storage 142 may be associated with an augmentedstate of the UAV 102.

Additionally or alternatively, when the processor 136 determines thatthe first UAV 102 is affected by the first virtual event 144 based onthe relative locations of the first UAV 102 and the first virtual event144 being within the threshold distance of one another, the gameexperience controller 150 executes audio commands 154 and/or visualcommands 156 that cause the first UAV 102 to appear to be affected bythe first virtual event 144. The audio commands 154 and/or the visualcommands 156 may be accessible from the game data 121 and are associatedwith an augmented state of the first UAV 102. In some examples,executing the visual commands 156 causes example audio effects 158 toemit sound to simulate the first UAV 102 accelerating and/or otherwisebeing affected by the first virtual event 144 when the actual speedand/or flight pattern of the first UAV 102 remains constant. In someexamples, executing the visual commands 156 causes example visualeffects 160 to emit light on the propellers 108 to simulate the firstUAV 102 accelerating and/or otherwise being affected by the firstvirtual event 144 when the acceleration rate and/or the flight patternof the first UAV 102 remains constant.

While the above examples mention the processor 136 and the gameexperience controller 150 being implemented in the first UAV 102, theprocessor 136, the game experience controller 150 and/or portionsthereof may additionally or alternatively be implemented by the firstremote controller 114. Such an approach of implementing the processor136, the game experience controller 150 and/or portions thereof in thefirst remote controller 114 and/or otherwise external to the first UAV102 may enable the first UAV 102 to be smaller, lighter and/or cheaperto manufacture, etc.

FIG. 2 illustrates an example implementation of the example gameexperience controller 150 of FIG. 1. In the illustrated example, thegame experience controller 150 includes an example aerial vehicleidentifier 202, an example aerial vehicle attribute initializer 204, anexample augmented state definer 216, an example flight controller 218including an example augmented state controller 220, an example audioeffects controller 222, an example visual effects controller 224, anexample feedback generator 226 and an example timer 230.

In the illustrated example, the aerial vehicle identifier 202 identifiesattributes (e.g., characteristics and/or statistics) associated with thefirst UAV 102. In this example, the attributes (e.g., characteristicsand/or statistics) are stored in the data storage 142 and/or the gamedata 121, and are identified prior to the first UAV 102 participating ina game and/or the event, and/or while the UAV 102 is participating inthe game and/or event. In some examples, the attributes identifiedinclude speed attributes (e.g., minimum speed, maximum speed) of thefirst UAV 102, electronic speed controller (ESC) attributes,acceleration attributes (e.g., minimum acceleration, maximumacceleration) of the first UAV 102, agility attributes of the first UAV102, a wireless range of the first UAV 102, a maximum flight time of thefirst UAV 102, battery attributes of the first UAV 102, etc.

To initialize the first UAV 102 to participate in the game and/or event,in some examples, the aerial vehicle attribute initializer 204 accessesthe game data 121 from the data storage 142 and/or the game facilitator119. In some examples, the game data 121 defines attributes that thefirst UAV 102 is to have and/or exhibit when participating in the gameand/or the event. In some examples, the attributes defined in the gamedata 121 are the same as the attributes identified by the aerial vehicleidentifier 202. In other examples, the attributes defined in the gamedata 121 are different than the attributes identified by the aerialvehicle identifier 202. For example, the attributes defined in the gamedata 121 may define a maximum speed for the first UAV 102 when the firstUAV 102 participates in the game and/or event as being less than themaximum speed identified by the aerial vehicle identifier 202. Theattributes may include the maximum speed of the first UAV 102, anagility level of the first UAV 102, etc. Once accessed, the aerialvehicle attribute initializer 204 assigns those attributes to the firstUAV 102 prior to the start of the game and/or the event and/or duringthe game and/or event itself.

During a game and/or a competition, if the processor 136 determines thata virtual event (e.g., the virtual event 144) and the first UAV 102 arewithin a threshold distance of one another, the augmented state definer216 defines an augmented state for the first UAV 102 based on, forexample, the game data 121 accessed from the game facilitator 119. Forexample, if the first virtual event 144 is a virtual tractor beamemitted by the second UAV 104 and the processor 136 determines that thefirst UAV 104 is within a threshold distance of the tractor beam, theaugmented state definer 216 defines the first UAV 102 as being affectedby the virtual tractor beam based on the definition(s) included in thegame data 121. As such, to simulate the first UAV 102 being affected bythe virtual tractor beam, in some examples, the augmented statecontroller 220 accesses and executes the flight commands 152 that changeand/or augment flight characteristics of the first UAV 102 in a mannerthat is different than the flight commands 111 received from the firstremote controller 114. However, if the processor 136 determines that thefirst virtual event 144 and the first UAV 102 are not within a thresholdof one another, the augmented state definer 216 determines that thefirst UAV 102 is not affected by the tractor beam and, thus, does notdefine an augmented state for the first UAV 102. When the first UAV 102is not affected by the virtual event and, thus, is not in an augmentedstate, the flight controller 222 and/or the processor 136 may controlthe first UAV 102 based on the first flight commands 111 received fromthe first remote controller 114.

In some examples, if the virtual event is a laser emitted by the secondUAV 104 and the processor 136 determines that the first UAV 104 iswithin a threshold distance of the laser (e.g., the event), theaugmented state definer 216 defines the first UAV 102 as being affectedby the laser based on a definition(s) within the game data 121. In somesuch examples, when the augmented state definer 216 determines that thefirst UAV 102 is virtually damaged and/or affected by the virtualevent(s), the augmented state controller 220 accesses and executes theflight commands 152 that change and/or augment flight characteristics ofthe first UAV 102 in a manner that is different than the flight commands111 received from the first remote controller 114. For example, inresponse to determining that the first UAV 102 is being affected by alaser virtual event, the augmented state controller 220 may execute theflight commands 152 that cause the first UAV 102 to perform a controlledgraveyard spiral and/or roll. In some examples, the flight commandsexecuted by the augmented state controller 220 are configured and/orstructured to ensure that that the first UAV 102 is not physicallydamaged when performing these maneuvers and/or when the first UAV 102 isbeing autonomously and/or semi-autonomously controlled.

Additionally or alternatively, during a game and/or a competition, insome such examples, when the processor 136 determines that the first UAV102 is virtually damaged and/or affected by a virtual event(s), theaudio effects controller 222 accesses and executes the audio commands154 that cause the audio effects 158 to emit sound that simulates thefirst UAV 102 being damaged and/or otherwise being affected by a virtualevent(s). Additionally or alternatively, in some such examples, when theprocessor 136 determines that the first UAV 102 is virtually damagedand/or affected by a virtual event(s), the visual effects controller 224accesses and executes the visual commands 156 that cause the visualeffects 160 to emit light and/or other effects that simulate the firstUAV 102 being damaged and/or otherwise being affected by a virtualevent(s).

Additionally or alternatively, during a game and/or a competition, insome such examples, when the processor 136 determines that the first UAV102 is virtually damaged and/or affected by a virtual event(s), thefeedback generator 226 generates the feedback 112 associated with thevirtual event(s). For example, the feedback generator 226 may generatevisual feedback, audio feedback, haptic feedback, etc., to affect and/orenhance a user's experience at the remote controller (e.g., the firstremote controller 114). In some examples, the feedback 112 is accessedfrom the game data 121.

In the illustrated example, when the first UAV 102 is controlled by theaugmented state controller 220, the timer 230 determines when athreshold amount of time has lapsed to enable the first UAV 102 to againbe controlled by the flight commands 111 (e.g., without any virtualaugmentation). When the threshold amount of time has lapsed, the flightcontroller 218 accesses the first flight commands 111 to control thefirst UAV 102 in the non-augmented state.

While an example manner of implementing the game experience controller150 of FIG. 1 is illustrated in FIG. 2, one or more of the elements,processes and/or devices illustrated in FIG. 2 may be combined, divided,re-arranged, omitted, eliminated and/or implemented in any other way.Further, the example aerial vehicle identifier 202, the example aerialvehicle attribute initializer 204, the example augmented state definer216, the example flight controller 218, the example augmented statecontroller 220, the example audio effects controller 222, the examplevisual effects controller 224, the example feedback generator 226, theexample timer 230 and/or, more generally, the example game experiencecontroller 150 of FIG. 2 may be implemented by hardware, software,firmware and/or any combination of hardware, software and/or firmware.Thus, for example, any of the example aerial vehicle identifier 202, theexample aerial vehicle attribute initializer 204, the example augmentedstate definer 216, the example flight controller 218, the exampleaugmented state controller 220, the example audio effects controller222, the example visual effects controller 224, the example feedbackgenerator 226, the example timer 230 and/or, more generally, the examplegame experience controller 150 of FIG. 2 could be implemented by one ormore analog or digital circuit(s), logic circuits, programmableprocessor(s), application specific integrated circuit(s) (ASIC(s)),programmable logic device(s) (PLD(s)) and/or field programmable logicdevice(s) (FPLD(s)). When reading any of the apparatus or system claimsof this patent to cover a purely software and/or firmwareimplementation, at least one of the example aerial vehicle identifier202, the example aerial vehicle attribute initializer 204, the exampleaugmented state definer 216, the example flight controller 218, theexample augmented state controller 220, the example audio effectscontroller 222, the example visual effects controller 224, the examplefeedback generator 226, the example timer 230 and/or, more generally,the example game experience controller 150 of FIG. 2 is/are herebyexpressly defined to include a non-transitory computer readable storagedevice or storage disk such as a memory, a digital versatile disk (DVD),a compact disk (CD), a Blu-ray disk, etc. including the software and/orfirmware. Further still, the example game experience controller 150 ofFIG. 1 may include one or more elements, processes and/or devices inaddition to, or instead of, those illustrated in FIG. 2, and/or mayinclude more than one of any or all of the illustrated elements,processes and devices.

FIG. 3 illustrates an example operational scenario involving the secondUAV 104 firing an example virtual propeller disabling ray 302 at thefirst UAV 102 based on the appropriate flight command(s) 116 receivedfrom the second remote controller 120. To determine if the first UAV 102is affected by a virtual event corresponding to the virtual ray 302, insome examples, the processor 136 compares a location of the virtual ray302 and a location of the first UAV 102 to determine if the virtual ray302 and the first UAV 102 are within a threshold distance of oneanother. In some examples, the location of the virtual ray 302 isdetermined by accessing the game data 121 and/or otherwise interactingwith the game facilitator 119 and/or the UAV 102, 104. As shown in theexample of FIG. 3, based on the processor 136 identifying the virtualray 302 and the first UAV 102 being within a threshold distance of oneanother, the game experience controller 150 executes the flight commands152 associated with the virtual ray 302. In this example, executing theflight commands 152 cause a corresponding change in a flight pattern 304of the first UAV 102 for a threshold period of time to simulate thefirst UAV 102 being damaged. Additionally or alternatively, the gameexperience controller 150 generates the feedback 112 at the first remotecontroller 114 to simulate the first UAV 102 being damaged by thevirtual ray 202.

In some examples, while the flight pattern 304 of the first UAV 102 isaffected by the virtual ray 302, the game experience controller 150executes the audio commands 154 and/or executes the visual commands 156that cause the visual effects 160 and/or the audio effects 158 to emitlight and/or sound to further simulate the first UAV 102 being damagedby the virtual ray 302. Additionally and/or alternatively, in someexamples, a second game experience controller 150 of the second UAV 104causes second visual effects and/or second audio effects of the secondUAV 104 to emit light and/or sound to simulate the virtual ray 302 beingfired.

FIG. 4 illustrates an example operational scenario involving of thefirst UAV 102 flying through an example virtual viscous area 402. Todetermine if the first UAV 102 is affected by a virtual eventcorresponding to the virtual viscous area 402 and/or flying through thevirtual viscous area 402, in some examples, the processor 136 compares alocation of the virtual viscous area 402 and a location of the first UAV102 to determine if the virtual viscous area 402 and the first UAV 102are within a threshold distance of one another. In some examples, thelocation of the virtual viscous area 402 is determined by accessing thegame data 121 and/or otherwise interacting with the game facilitator 119and/or the UAV 102, 104.

As shown in the example of FIG. 4, based on the processor 136identifying the virtual viscous area 402 and the first UAV 102 beingwithin a threshold distance of one another, the game experiencecontroller 150 executes the appropriate flight commands 152 associatedwith the virtual viscous area 402 to change a flight pattern 404 of thefirst UAV 102, and/or generates the feedback 112 at the first remotecontroller 114, to simulate the first UAV 102 being less visible or notvisible at the first remote controller 114. Additionally oralternatively, in some examples, the game experience controller 150and/or the game facilitator 119 communicates with a second gameexperience controller 150 of the second UAV 104 to cause the first UAV102 to be less visible or not visible at the second remote controller120, via the feedback 118, when the first UAV 102 flies through and/oris within the virtual viscous area 502.

FIG. 5 illustrates an example operational scenario involving the firstUAV 102 flying through example virtual smoke 502. In some examples, todetermine if the first UAV 102 is affected by a virtual eventcorresponding to the virtual smoke 502 and/or flying through the virtualsmoke 502, in some examples, the game experience controller 150 comparesa location of the virtual smoke 502 and a location of the first UAV 102to determine if the virtual smoke 502 and the first UAV 102 are within athreshold distance of one another.

As shown in the example of FIG. 5, based on the processor 136identifying the virtual smoke 502 and the first UAV 102 being within athreshold distance of one another, the game experience controller 150executes the appropriate flight commands 152 associated with the virtualsmoke 502 that causes a flight pattern 504 of the first UAV 102 tochange. Additionally or alternatively, the game experience controller150 and/or the game facilitator 119 generates the appropriate feedback112 at the first remote controller 114 to simulate the first UAV 102being less visible or not visible at the first remote controller 114.Additionally or alternatively, in some examples, the game experiencecontroller 150 communicates with a second game experience controller 150of the second UAV 104 to cause the first UAV 102 to be less visible ornot visible at the second remote controller 120, via the feedback 118,when the first UAV 102 flies through and/or is within the virtual smoke502.

FIG. 6 illustrates an example operational scenario involving the firstUAV 102 flying adjacent to a virtual attractive hole 602. To determineif the first UAV 102 is affected by a virtual event corresponding to thevirtual attractive hole 602, in some examples, the processor 136compares a location of the virtual attractive hole 602 and a location ofthe first UAV 102 to determine if the virtual attractive hole 602 andthe first UAV 102 are within a threshold distance of one another. Insome examples, the location of the virtual attractive hole 602 isdetermined by accessing the game data 121 and/or otherwise interactingwith the game facilitator 119 and/or the UAV 102, 104.

As shown in the example of FIG. 6, based on the processor 136identifying the virtual attractive hole 502 and the first UAV 102 beingwithin a threshold distance of one another, the game experiencecontroller 150 executes the appropriate flight commands 152 associatedwith the virtual attractive hole 602 to change the flight pattern 604 ofthe first UAV 102 to bend toward the virtual attractive hole 602.Additionally or alternatively, in some examples, the game experiencecontroller 150 and/or the game facilitator 119 generates the appropriatefeedback 112 at the first remote controller 114 to simulate the firstUAV 102 being drawn toward the virtual attractive hole 602. In otherwords, in this example, the game experience controller 150 augments theflight commands 111 received from the first remote controller 114 toaccount for the virtual attractive hole 602 affecting the first UAV 102and/or instead executes the augmented flight commands 152 associatedwith the virtual attractive hole 602. In some examples, the gameexperience controller 150 causes the flight pattern 604 of the first UAV102 to be affected by the virtual attractive hole 602 for a thresholdamount of time (e.g., 2 seconds, 5 seconds, 20 seconds, etc.) prior toagain controlling the first UAV 102 using the flight commands 111.

FIG. 7 illustrates an example operational scenario involving the firstUAV 102 flying adjacent to an example acceleration and/or boost track702. In some examples, to determine if the first UAV 102 is affected bya virtual event corresponding to the acceleration track 702, in someexamples, the processor 136 compares a location of the accelerationtrack 702 and a location of the first UAV 102 to determine if theacceleration track 702 and the first UAV 102 are within a thresholddistance of one another. In some examples, the location of theacceleration track 702 is determined by accessing the game data 121and/or otherwise interacting with the game facilitator 119 and/or theUAV 102, 104.

As shown in the example of FIG. 7, based on the processor 136identifying the acceleration track 702 and the first UAV 102 beingwithin a threshold distance of one another, the game experiencecontroller 150 executes the appropriate flight commands 152 associatedwith the acceleration track 702 to cause the first UAV 102 to accelerateand/or virtually accelerate for a threshold period of time. In someexamples, while the first UAV 102 is affected by the acceleration track702, the game experience controller 150 executes the appropriate audiocommands 154 and/or the appropriate visual commands 156 that cause thevisual effects 160 and/or the audio effects 158 to emit light and/orsound to further simulate the first UAV 102 accelerating. Thus, in somesuch examples, the actual speed of the first UAV 102 may not change whenthe first UAV 102 is affected by the acceleration track 702 but insteadthe visual effects 160 and/or the audio effects 158 simulateacceleration. Additionally or alternatively, in some examples, the gameexperience controller 150 and/or the game facilitator 119 generates theappropriate feedback 112 at the first remote controller 114 to cause thesimulation of acceleration to occur.

FIG. 8 illustrates an example operational scenario involving the secondUAV 104 firing an example virtual tractor beam 802 at the first UAV 102based on the flight command 116 received from the second remotecontroller 120. To determine if the first UAV 102 is affected by avirtual event corresponding to the virtual tractor beam 802, in someexamples, the processor 136 compares a location of the virtual tractorbeam 802 and a location of the first UAV 102 to determine if the virtualtractor beam 802 and the first UAV 102 are within a threshold distanceof one another. In some examples, the location of the virtual tractorbeam 802 is determined by accessing the game data 121 and/or otherwiseinteracting with the game facilitator 119 and/or the UAV 102, 104.

As shown in the example of FIG. 8, based on the processor 136identifying the virtual tractor beam 802 and the first UAV 102 beingwithin a threshold distance of one another, the game experiencecontroller 150 executes the appropriate flight commands 152 associatedwith the virtual tractor beam 802 to change a flight pattern 804 of thefirst UAV 102 for a threshold period of time. In some examples, whilethe flight pattern 804 of the first UAV 102 is affected by the virtualray 302, the game experience controller 150 executes the appropriateaudio commands 154 and/or the appropriate visual commands 156 associatedwith the virtual tractor beam 802 that cause the visual effects 160and/or the audio effects 158 to emit light and/or sound to furthersimulate the first UAV 102 being drawn toward the second UAV 104 by thevirtual tractor beam 802. In other words, the game experience controller150 augments the flight commands 111 received from the first remotecontroller 114 to account for the virtual tractor beam 802 affecting thefirst UAV 102 and/or instead executes the augmented flight commands 152associated with the virtual tractor beam 802. Additionally and/oralternatively, in some examples, a second game controller 150 of thesecond UAV 104 and/or the game facilitator 119 causes second visualeffects and/or second audio effects of the second UAV 104 to emit lightand/or sound to simulate the virtual tractor beam 802 being fired.

FIG. 9 illustrates an example operational scenario involving the secondUAV 104 firing virtual bullets 902 at the first UAV 102 based on theflight command 116 received from the second remote controller 120. Asshown in the example of FIG. 9, based on the processor 136 determiningthat one or more of the virtual bullets 902 impact the first UAV 102,the game experience controller 150 executes the appropriate flightcommands 152 that cause a flight pattern 904 of the first UAV 102 tochange to simulate the first UAV 102 being damaged. As shown in theexample of FIG. 9, the flight pattern 904 includes a controlled spin, acontrolled graveyard spiral and/or graveyard spin, etc. However, theflight pattern 904 simulating the first UAV 102 being affected by thevirtual bullets 902 and/or any other virtual event and/or environmentmay be different based on the game being played, etc.

FIG. 10 illustrates an example operational scenario involving the secondUAV 104 emitting a virtual power shield 1002 based on the flight command116 received from the second remote controller 120. As shown in theexample of FIG. 10, based on the processor 136 determining that thepower shield 1002 effects the first UAV 102, the game experiencecontroller 150 executes the appropriate flight commands 152 that cause aflight pattern 1004 of the first UAV 102 to change to simulate the firstUAV 102 being deflected by the virtual power shield 1002 and for virtualbullets 1006 dfired by the first UAV 102 to be deflected by the virtualpower shield 1002. In some examples, the flight pattern of the first UAV102 changes when the virtual bullets 1006 are fired. Additionally oralternatively, in some examples, the audio effects controller 222executes the appropriate audio commands 154 and/or the appropriatevisual commands 156 associated with the first UAV 102 firing the virtualbullets 1006.

A flowchart representative of example machine readable instructions forimplementing the game experience controller 150 of FIG. 2 is shown inFIGS. 11 and 12. In this example, the machine readable instructionscomprise a program for execution by a processor such as the processor1212 shown in the example processor platform 1200 discussed below inconnection with FIG. 13. The program may be embodied in software storedon a non-transitory computer readable storage medium such as a CD-ROM, afloppy disk, a hard drive, a digital versatile disk (DVD), a Blu-raydisk, or a memory associated with the processor 1212, but the entireprogram and/or parts thereof could alternatively be executed by a deviceother than the processor 1212 and/or embodied in firmware or dedicatedhardware. Further, although the example program is described withreference to the flowchart illustrated in FIGS. 11 and 12, many othermethods of implementing the example game experience controller 150 mayalternatively be used. For example, the order of execution of the blocksmay be changed, and/or some of the blocks described may be changed,eliminated, or combined. Additionally or alternatively, any or all ofthe blocks may be implemented by one or more hardware circuits (e.g.,discrete and/or integrated analog and/or digital circuitry, a FieldProgrammable Gate Array (FPGA), an Application Specific Integratedcircuit (ASIC), a comparator, an operational-amplifier (op-amp), a logiccircuit, etc.) structured to perform the corresponding operation withoutexecuting software or firmware.

As mentioned above, the example processes of FIGS. 11 and 12 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media.“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim lists anythingfollowing any form of “include” or “comprise” (e.g., comprises,includes, comprising, including, etc.), it is to be understood thatadditional elements, terms, etc. may be present without falling outsidethe scope of the corresponding claim. As used herein, when the phrase“at least” is used as the transition term in a preamble of a claim, itis open-ended in the same manner as the term “comprising” and“including” are open ended.

The example program 1100 of FIG. 11 begins at block 1102 with theprocessor 136 executing the flight commands 111 to control an unmannedvehicle (e.g., the first UAV 102) (block 1102). The processor 136identifies a first location of a first virtual event (e.g., the firstvirtual event 144) (block 1104) and identifies a second location of theunmanned vehicle (block 1106). The processor 136 compares the first andsecond locations (block 1108). At block 1110, the processor 136determines if the first and second locations are within a thresholddistance of one another (block 1110). If the first and second locationsare within the threshold distance of one another, the augmented statecontroller 220 accesses and executes second flight commands to controlthe unmanned vehicle in a manner to simulate the unmanned vehicle beingaffected by the virtual event (block 1112).

The example program 1150 of FIG. 12 begins at block 1152 with theprocessor 136 accessing the flight commands 111 associated with anon-augmented state of the first UAV (block 1152). The processor 136executes the flight commands 111 to control the first UAV 102 (block1154). In some examples, the flight commands 111 are accessed and/orotherwise received from the first remote controller 114. The firstremote controller 114 may receive input from a user (e.g., a person).Alternatively, the first remote controller 114 may autonomously and/orsemi-autonomously generate and/or access the flight commands 111 tocontrol the first UAV 102.

The processor 136 accesses first location data of the first UAV 102(block 1156) and assesses second location data of the first virtualevent 144 (block 1158). In some examples, the first location data isdetermined based on processing first, second and/or third position data131, 132, 134 from the respective boundary beacons 122, 124, 126, and/orbased on processing sensor and/or image/video data from the sensor 138and/or the camera 140. Of course, the position of the first UAV 102 maybe determined in many different ways. In some examples, the position ofthe first virtual event 144 is determined by the processor 136 byaccessing the game data 121 at the game facilitator 119 and/orinteracting with the first UAV 102, the first remote controller 114, thesecond UAV 104 and/or the second remote controller 120.

The processor 136 compares the first and second locations (block 1160).At block 1112, the processor 136 determines if the first and secondlocations are within a threshold distance of one another (block 1162).If the first and second locations are within the threshold distance ofone another, the augmented state definer 216 determines if there aresecond flight commands associated with the first virtual event 144 andan augmented state of the first UAV 102 (block 1164). In some examples,the second flight commands, if available, are associated with the flightcommands 152 and/or the game data 121. In some examples, the secondflight commands are associated with the first UAV 102 simulating beingunder the influence of a virtual force and/or otherwise being affectedby a virtual force and/or a virtual flying condition. If the augmentedstate definer 216 identifies the presence of the second flight commands,the augmented state controller 220 accesses the second flight commands(block 1166) and executes the second flight commands to control thefirst UAV 102 (block 1168).

At block 1170, the augmented state definer 216 determines if there areaudio commands associated with the first virtual event 144 and theaugmented state of the first UAV 102. In some examples, the audiocommands, if available, are associated with the audio commands 154and/or the game data 121. In some examples, the audio commands areassociated with the first UAV 102 simulating being under the influenceof a virtual force and/or otherwise being affected by a virtual forceand/or a virtual flying condition. If the augmented state definer 216identifies the presence of the audio commands, the augmented statecontroller 220 accesses the audio commands (block 1172) and executes theaudio commands that cause the audio effects 158 to emit noise/sound,etc., associated with the first virtual event 144 (block 1174).

At block 1176, the augmented state definer 216 determines if there arevisual commands associated with the first virtual event 144 and theaugmented state of the first UAV 102. In some examples, the visualcommands, if available, are associated with the visual commands 156and/or the game data 121. In some examples, the visual commands areassociated with the first UAV 102 simulating being under the influenceof a virtual force and/or otherwise being affected by a virtual forceand/or a virtual flying condition. If the augmented state definer 216identifies the presence of the second flight commands, the augmentedstate controller 220 accesses the visual commands (block 1178) andexecutes the visual commands that cause the visual effects 160 to emitlight, etc., associated with the first virtual event 144 (block 1180).

At block 1182, the augmented state definer 216 determines if there isfeedback to generate associated with the first virtual event 144 and theaugmented state of the first UAV 102 (block 1182). If the augmentedstate definer 216 determines there is feedback to generate associatedwith the virtual event, the feedback generator 226 generates thefeedback 112 (block 1184). In some examples, the feedback 112 isassociated with audio feedback, visual feedback, haptic feedback, etc.

While the second flight commands, the audio commands, the visualcommands, etc., are being executed and/or while the feedback is beinggenerated, the timer 230 determines whether a threshold amount of timehas lapsed (block 1186). If the threshold amount of time has lapsed, theflight controller 118 accesses the flight commands 111 associated withthe non-augmented state of the first UAV 102 (block 1188) and executesthe flight commands 111 to control the first UAV 102 (block 1190).

FIG. 13 is a block diagram of an example processor platform 1200structured to execute the instructions of FIGS. 11 and/or 12 toimplement the game experience controller of FIG. 150. The processorplatform 1200 can be, for example, a server, a personal computer, amobile device (e.g., a cell phone, a smart phone, a tablet such as aniPad™), a personal digital assistant (PDA), an Internet appliance or anyother type of computing device.

The processor platform 1200 of the illustrated example includes aprocessor 1212. The processor 1212 of the illustrated example ishardware. For example, the processor 1212 can be implemented by one ormore integrated circuits, logic circuits, microprocessors or controllersfrom any desired family or manufacturer. The hardware processor may be asemiconductor based (e.g., silicon based) device. In this example, theprocessor implements the example aerial vehicle identifier 202, theexample aerial vehicle attribute initializer 204, the example augmentedstate definer 216, the example flight controller 218, the exampleaugmented state controller 220, the example audio effects controller222, the example visual effects controller 224, the example feedbackgenerator and the example timer 230.

The processor 1212 of the illustrated example includes a local memory1213 (e.g., a cache). The processor 1212 of the illustrated example isin communication with a main memory including a volatile memory 1214 anda non-volatile memory 1216 via a bus 1218. The volatile memory 1214 maybe implemented by Synchronous Dynamic Random Access Memory (SDRAM),Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory(RDRAM) and/or any other type of random access memory device. Thenon-volatile memory 1216 may be implemented by flash memory and/or anyother desired type of memory device. Access to the main memory 1214,1216 is controlled by a memory controller.

The processor platform 1200 of the illustrated example also includes aninterface circuit 1220. The interface circuit 1220 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 1222 are connectedto the interface circuit 1220. The input device(s) 1222 permit(s) a userto enter data and/or commands into the processor 1212. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 1224 are also connected to the interfacecircuit 1220 of the illustrated example. The output devices 1224 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 1220 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip and/or a graphics driver processor.

The interface circuit 1220 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network1226 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 1200 of the illustrated example also includes oneor more mass storage devices 1228 for storing software and/or data.Examples of such mass storage devices 1228 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives.

The coded instructions 1232 of FIG. 11 may be stored in the mass storagedevice 1228, in the volatile memory 1214, in the non-volatile memory1216, and/or on a removable tangible computer readable storage mediumsuch as a CD or DVD.

From the foregoing, it will be appreciated that example methods,apparatus and articles of manufacture have been disclosed that relate toaltering flight modes and/or flight characteristics for unmanned aerialvehicles (UAVs) and/or drones to enhance an experience for a user. Insome examples, the flight modes and/or flight characteristics change thebehavior and/or feel of the example UAVs using example dynamic flightcontrols and/or audiovisual and/or haptic elements. Some example UAVsdisclosed herein are structured and/or configured to provide multipleflight modes and/or flight characteristics to advantageously enhanceaction, user experience and/or variety in multiple game situations.

In some examples, example virtual events can be created that dynamicallyaffect the performance and/or flight characteristics of the UAV. Forexample, an example virtual cloud (e.g., a virtual green cloud) may becreated in a game arena, which causes the UAVs to feel heavy and/or slowwhen the flying through the cloud. In some example, to determine if theUAV is affected by the virtual cloud, a controller compares the positionof the UAV and the position of the virtual cloud to determine if the UAVand the cloud are within a threshold distance of one another and/or,more generally, to determine if the UAV is flying through the cloud. Insuch examples, if the controller determines that the UAV is flyingthrough the cloud, an example game experience controller commands and/orcauses the flight characteristics of the UAV to be modified and/orcommands the UAV to implement a “slow and heavy” flying mode. In otherwords, in some examples, when the UAV is flying through the virtualcloud, user commands to the UAV are augmented and/or disregarded basedon characteristics of the virtual cloud.

Additionally or alternatively, in some examples, if the controllerdetermines that the UAV is flying through the cloud, feedback isprovided to the user, via a display or other head-mounted display, thatenables the virtual cloud to be visible to the user. Additionally oralternatively, in some examples, if the controller determines that theUAV is flying through the cloud, haptic feedback is provided to the userthat enables the user to receive tactile feedback (e.g., real-timetactile feedback). Additionally or alternatively, in some examples, ifthe controller determines that the UAV is flying through the cloud,feedback is provided to the user including audio feedback representingan increase in motor speed to account for the additional effort exertedwhen navigating through the virtual cloud. In other words, the examplesdisclosed herein enable the user to fully perceive the virtual heavinesswhen the UAV enters the virtual cloud and the virtual lightness when theUAV exits the virtual cloud including augmented reality (AR), mixedreality (MR), haptics and/or audio.

In other examples, if a first UAV is participating in a dogfight with asecond UAV and the controller identifies that the first UAV was hit by avirtual projectile (e.g., a bullet, a missile) shot by the second UAV,an example game experience controller commands and/or causes the flightcharacteristics of the first UAV to be modified and/or commands thefirst UAV to implement a “damaged” flying mode and/or a controlled spinrepresenting that the first UAV was struck by the projectile. In somesuch examples, when the first UAV is struck by a projectile, usercommands to the first UAV are augmented and/or disregarded.

Example 1

An example apparatus for use with an unmanned vehicle includes aprocessor to determine whether a first location of an unmanned vehicleand a second location of a virtual event is within a threshold distance;and a game experience controller to: control the unmanned vehicle basedon a first command associated with a non-augmented state of the unmannedvehicle in response to the first location of the unmanned vehicle andthe second location of the virtual event being outside of the thresholddistance; and in response to the first location of the unmanned vehicleand the second location of the virtual event being within the thresholddistance, control the unmanned vehicle based on a second commandassociated with an augmented state of the unmanned vehicle to simulatethe unmanned vehicle being affected by the virtual event.

Example 2

In Example 1 or other examples, the game experience controller isfurther to execute at least one of an audio command or a visual commandthat simulates the unmanned vehicle being affected by the virtual eventin response to the first location of the unmanned vehicle and the secondlocation of the virtual event being within the threshold distance.

Example 3

In Examples 1, 2 or other examples, the second command is not associatedwith user input.

Example 4

In Examples, 1, 2, 3 or other examples, the second command is associatedwith the virtual event.

Example 5

In Examples, 1, 2, 3, 4 or other examples, the game experiencecontroller is to control the unmanned vehicle based on the secondcommand for a threshold amount of time.

Example 6

In Example 5 or other examples, in response to the threshold amount oftime lapsing, the game experience controller is to control the unmannedvehicle based on a third command associated with the non-augmented stateof the unmanned vehicle.

Example 7

In Examples 1, 2, 3, 4, 5, 6 or other examples, the virtual eventincludes at least one of a virtual viscous area, virtual smoke, avirtual tractor beam, a virtual acceleration track, a virtual bullet, avirtual propeller disabling ray, a virtual attractive hole, or a virtualprotective shield.

Example 8

An example method for using an unmanned vehicle includes controlling, byexecuting an instruction with at least one processor, an unmannedvehicle based on a first command; identifying, by executing aninstruction with the at least one processor, a first location of avirtual event; identifying, by executing an instruction with the atleast one processor, a second location of the unmanned vehicle; and inresponse to the first and second locations being within a thresholddistance, controlling, by executing an instruction with the at least oneprocessor, the unmanned vehicle based on a second command to simulatethe unmanned vehicle being affected by the virtual event.

Example 9

In Example 8 or other examples, the method includes, in response to thefirst and second locations being within the threshold distance,initiating at least one of a visual affect or an audio effect at theunmanned vehicle to simulate the unmanned vehicle being affected by thevirtual event.

Example 10

In Examples 8, 9 or other examples, the first command is associated witha non-augmented state of the unmanned vehicle.

Example 11

In Examples 8, 9, 10 or other examples, the second command is associatedwith an augmented state of the unmanned vehicle.

Example 12

In Examples, 8, 9, 10, 11 or other examples, the controlling of theunmanned vehicle based on the second command includes controlling theunmanned vehicle based on the second command for a threshold amount oftime.

Example 13

In Example 12 or other examples, the method includes, in response to thethreshold amount of time lapsing, controlling the unmanned vehicle basedon a third command associated with a non-augmented state of the unmannedvehicle.

Example 14

In Example 13 or other examples, the third command is associated withuser input.

Example 15

In Examples 8, 9, 10, 11, 12, 13, 14 or other examples, the controllingof the unmanned vehicle based on the second command includesautonomously controlling the unmanned vehicle for a threshold amount oftime to simulate the unmanned vehicle being affected by the virtualevent.

Example 16

In Examples 8, 9, 10, 11, 12, 13, 14, 15 or other examples, the firstlocation of the virtual event is determined by determining a virtuallocation of the virtual event and identifying a corresponding physicallocation, the physical location associated with the first location ofthe virtual event.

Example 17

An example tangible computer-readable medium comprising instructionsthat, when executed, cause a processor to, at least: control an unmannedvehicle based on a first command; identify a first location of a virtualevent; identify a second location of the unmanned vehicle; and inresponse to the first and second locations being within a thresholddistance, control the unmanned vehicle based on a second command tosimulate the unmanned vehicle being affected by the virtual event.

Example 18

In Example 17 or other examples, in response to the first and secondlocations being within the threshold distance, the instructions, whenexecuted, are to further cause the processor to initiate at least one ofa visual affect or an audio effect at the unmanned vehicle to simulatethe unmanned vehicle being affected by the virtual event.

Example 19

In Examples 17, 18 or other examples, the first command is associatedwith a non-augmented state of the unmanned vehicle.

Example 20

In Examples 17, 18, 19 or other examples, the second command isassociated with an augmented state of the unmanned vehicle.

Example 21

In Examples 17, 18, 19, 20 or other examples, the controlling of theunmanned vehicle based on the second command is to cause the processorto control the unmanned vehicle based on the second command for athreshold amount of time.

Example 22

In Example 21 or other examples, the instructions, when executed, causethe processor to control the unmanned vehicle based on a third commandassociated with a non-augmented state of the unmanned vehicle inresponse to the threshold amount of time lapsing.

Example 23

In Example 22 or other examples, the third command is associated withuser input.

Example 24

In Examples 17, 18, 19, 20, 21, 22, 23 or other examples, theinstructions, when executed, cause the processor to simulate theunmanned vehicle being affected by the virtual event by autonomouslycontrolling the unmanned vehicle for a threshold amount of time.

Example 25

In Examples 17, 18, 19, 20, 21, 22, 23, 24 or other examples theinstructions, when executed, cause the processor to determine the firstlocation of the virtual event by determining a virtual location of thevirtual event and identifying a corresponding physical location, thephysical location associated with the first location of the virtualevent.

Example 26

An example system for use with an unmanned vehicle, the system includes:means for controlling an unmanned vehicle based on first commands; meansfor identifying a first location of a virtual event; means foridentifying a second location of the unmanned vehicle; and means forcontrolling the unmanned vehicle based on second commands to simulatethe unmanned vehicle being affected by the virtual event in response tothe first and second locations being within a threshold of one another,

Example 27

In Example 26 or other examples, the first commands are associated witha non-augmented state of the unmanned vehicle.

Example 28

In Examples 26 or 27 or other examples, the second commands areassociated with an augmented state of the unmanned vehicle.

Example 29

In Examples 26, 27, 28 or other examples, the means for controlling theunmanned vehicle based on the second commands includes means forcontrolling the unmanned vehicle based on the second commands for athreshold amount of time.

Example 30

In Example 29 or other examples, the system includes means forcontrolling the unmanned vehicle based on third commands associated witha non-augmented state of the unmanned vehicle in response to thethreshold amount of time lapsing.

Example 31

In Examples 26, 27, 28, 29, 30 or other examples, the means foridentifying the first location of the virtual event includes means fordetermining a virtual location of the virtual event and identifying acorresponding physical location, the physical location associated withthe first location of the virtual event.

Example 32

In Examples 26, 27, 28, 29, 30, 31 or other examples, the virtual eventincludes at least one of a virtual viscous area, virtual smoke, avirtual tractor beam, a virtual bullet, a virtual propeller disablingray, a virtual attractive hole, a virtual acceleration track, or avirtual protective shield.

Example 33

In Examples 26, 27, 28, 29, 30, 31, 32 or other examples, the systemincludes means for executing at least one of audio commands or visualcommands that simulate the unmanned vehicle being affected by thevirtual event in response to the first and second locations being withina threshold of one another.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. An apparatus for use with an unmanned vehicle,comprising: a processor to determine whether a first physical locationof an unmanned vehicle is within a threshold distance of a secondphysical location, the second physical location corresponding to avirtual event; and a game experience controller to: control the unmannedvehicle based on a first command associated with a non-augmented stateof the unmanned vehicle in response to the first physical location ofthe unmanned vehicle being more than the threshold distance away fromthe second physical location; and in response to the first physicallocation of the unmanned vehicle being within the threshold distance ofthe second physical location, control the unmanned vehicle based on asecond command associated with an augmented state of the unmannedvehicle to simulate the unmanned vehicle being affected by the virtualevent.
 2. The apparatus of claim 1, wherein the game experiencecontroller is further to execute at least one of an audio command or avisual command to simulate the unmanned vehicle being affected by thevirtual event in response to the first physical location of the unmannedvehicle being within the threshold distance of the second physicallocation.
 3. The apparatus of claim 1, wherein the second command is notassociated with user input.
 4. The apparatus of claim 1, wherein thesecond command is associated with the virtual event.
 5. The apparatus ofclaim 1, wherein the game experience controller is to control theunmanned vehicle based on the second command for a threshold amount oftime.
 6. The apparatus of claim 5, wherein, in response to lapse of thethreshold amount, the game experience controller is to control theunmanned vehicle based on a third command associated with thenon-augmented state of the unmanned vehicle.
 7. The apparatus of claim1, wherein the virtual event includes at least one of a virtual viscousarea, virtual smoke, a virtual tractor beam, a virtual accelerationtrack, a virtual bullet, a virtual propeller disabling ray, a virtualattractive hole, or a virtual protective shield.
 8. A method of using anunmanned aerial vehicle, comprising: identifying, by executing aninstruction with at least one processor, a first physical locationcorresponding to a virtual event; identifying, by executing aninstruction with the at least one processor, a second physical locationof the unmanned vehicle; in response to the first physical locationbeing within a threshold distance of the second physical location,controlling, by executing an instruction with the at least oneprocessor, the unmanned vehicle based on a first command to simulate theunmanned vehicle being affected by the virtual event; and in response tothe first physical location not being within the threshold distance ofthe second physical location, controlling, by executing an instructionwith the at least one processor, the unmanned vehicle based on a secondcommand associated with the unmanned vehicle being unaffected by thevirtual event.
 9. The method of claim 8, further including, in responseto the first physical location and the second physical location beingwithin the threshold distance, initiating at least one of a visualaffect or an audio effect at the unmanned vehicle to simulate theunmanned vehicle being affected by the virtual event.
 10. The method ofclaim 8, wherein the second command is associated with a non-augmentedstate of the unmanned vehicle.
 11. The method of claim 8, wherein thefirst command is associated with an augmented state of the unmannedvehicle.
 12. The method of claim 8, wherein the controlling of theunmanned vehicle based on the first command includes controlling theunmanned vehicle based on the first command for a threshold amount oftime.
 13. The method of claim 12, further including, in response to thethreshold amount of time lapsing, controlling the unmanned vehicle basedon a third command associated with a non-augmented state of the unmannedvehicle.
 14. The method of claim 13, wherein the third command isassociated with user input.
 15. The method of claim 8, wherein thecontrolling of the unmanned vehicle based on the first command includesautonomously controlling the unmanned vehicle for a threshold amount oftime to simulate the unmanned vehicle being affected by the virtualevent.
 16. The method of claim 8, wherein the first physical locationcorresponding to the virtual event is determined by determining avirtual location of the virtual event and identifying the first physicallocation, the first physical location associated with the first virtuallocation of the virtual event.
 17. A tangible computer-readable mediumcomprising instructions that, when executed, cause a processor to atleast: identify a first physical location corresponding to a virtualevent; identify a second physical location of an unmanned vehicle; inresponse to the first physical location being within a thresholddistance of the second physical location, control the unmanned vehiclebased on a first command to simulate the unmanned vehicle being affectedby the virtual event; and in response to the first physical location notbeing within the threshold distance of the second physical location,control the unmanned vehicle based on a second command associated withthe unmanned vehicle being unaffected by the virtual event.
 18. Thecomputer-readable medium as defined in claim 17, wherein in response tothe first physical location and the second physical location beingwithin the threshold distance, the instructions, when executed, are tofurther cause the processor to initiate at least one of a visual affector an audio effect at the unmanned vehicle to simulate the unmannedvehicle being affected by the virtual event.
 19. The computer-readablemedium as defined in claim 17, wherein the second command is associatedwith a non-augmented state of the unmanned vehicle.
 20. Thecomputer-readable medium as defined in claim 17, wherein the firstcommand is associated with an augmented state of the unmanned vehicle.21. The computer-readable medium as defined in claim 17, wherein thecontrolling of the unmanned vehicle based on the first command is tocause the processor to control the unmanned vehicle based on the firstcommand for a threshold amount of time.
 22. The computer-readable mediumas defined in claim 21, wherein the instructions, when executed, causethe processor to control the unmanned vehicle based on a third commandassociated with a non-augmented state of the unmanned vehicle inresponse to the threshold amount of time lapsing.
 23. Thecomputer-readable medium as defined in claim 22, wherein the thirdcommand is associated with user input.
 24. The computer-readable mediumas defined in claim 17, wherein the instructions, when executed, causethe processor to simulate the unmanned vehicle being affected by thevirtual event by autonomously controlling the unmanned vehicle for athreshold amount of time.
 25. The computer-readable medium as defined inclaim 17, wherein the instructions, when executed, cause the processorto determine the first physical location corresponding to the virtualevent by determining a virtual location of the virtual event andidentifying the first physical location, the first physical locationassociated with the virtual location of the virtual event.